/**
 * Copyright &copy; 2015-2020 <a href="http://www.jeeplus.org/">JeePlus</a> All rights reserved.
 */
package com.jeeplus.modules.wms.entity;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.util.List;
import com.google.common.collect.Lists;

import com.jeeplus.core.persistence.DataEntity;
import com.jeeplus.common.utils.excel.annotation.ExcelField;

/**
 * 出库单Entity
 * @author 李超辉
 * @version 2017-12-12
 */
public class Outbound extends DataEntity<Outbound> {
	
	private static final long serialVersionUID = 1L;
	private String projectName;  //项目名称
	private String code;		// 订单号
	private String status;		// 状态
	private String type;		// 订单类型
	private Date date;		// 订单日期
	private String ownerCode;		// 货主代码
	private String entrustNumber;		// 销售订单号
	private Date deliveryTime;		// 要求发货日期
	private String amount;		// 总订购量
	private String externalOrder;		// 外部订单号
	private Date actualDeliveryTime;		// 实际发货日期
	private String grossWeight;		// 总毛重
	private String volume;		// 总体积
	private String erpOrder;		// erp订单号
	private Date arrivalTime;		// 到货日期
	private String netWeight;		// 总净重
	private String money;		// 总金额
	private String shipmentNumbers;		// erp发运号
	private String workNumber;		// 作业单号
	private String no;		// 箱数
	private String loadingType;		// 装卸类型
	private String moveType;		// 移动类型
	private String logisticsName;		// 物流商名称
	private String logisticsPerson;		// 联系人
	private String logisticsPhone;		// 联系人电话
	private String plateNumber;		// 车牌号码
	private String driverPhone;		// 司机电话
	private String transportMode;		// 运输方式
	private String driverName;		// 司机姓名
	private String ownerName;		// 货主名称
	private String ownerAddress;		// 地址
	private String ownerPerson;		// 联系人
	private String ownerPhone;		// 电话
	private String logisticsOrder;		// 物流订单号
	private String ownerSystem;		// 货主系统名称
	private String unitName;		// 收货单位名称
	private String unitConfirmor;		// 收货单位确认人
	private String phone;		// 确认人电话
	private String site;		// 收货详细地址
	private String arriveProvince;		// 到站省
	private String arriveCity;		// 到站市
	private String distance;		// 合同里程
	private String transitLines;		// 运输线路
	private List<OutStatistics> outStatisticsList = Lists.newArrayList();		// 子表列表
	private List<Storehouse> storehouseList = Lists.newArrayList();		// 子表列表
	private String  workType;     //作业类型
	private int dycs;//打印次数
	private String dx;//吨箱
	private String dg;//炖罐
	private String xx;//小箱
	private String xht;//小黄桶
	private String xt;//小桶
	private String zt;//中桶
	private String dt;//大桶
    private int fc;//是否发车
	private String dai;
	private String jian;
	private String djzt;//工作量登记状态
	private String pcd;//派车单

	public String getPcd() {
		return pcd;
	}

	public void setPcd(String pcd) {
		this.pcd = pcd;
	}

	public String getDjzt() {
		return djzt;
	}

	public void setDjzt(String djzt) {
		this.djzt = djzt;
	}
	public String getDai() {
		return dai;
	}

	public void setDai(String dai) {
		this.dai = dai;
	}
	public String getJian() {
		return jian;
	}

	public void setJian(String jian) {
		this.jian = jian;
	}

	public int getFc() {
		return fc;
	}

	public void setFc(int fc) {
		this.fc = fc;
	}

	public String getDx() {
		return dx;
	}

	public void setDx(String dx) {
		this.dx = dx;
	}

	public String getDg() {
		return dg;
	}

	public void setDg(String dg) {
		this.dg = dg;
	}

	public String getXx() {
		return xx;
	}

	public void setXx(String xx) {
		this.xx = xx;
	}

	public String getXht() {
		return xht;
	}

	public void setXht(String xht) {
		this.xht = xht;
	}

	public String getXt() {
		return xt;
	}

	public void setXt(String xt) {
		this.xt = xt;
	}

	public String getZt() {
		return zt;
	}

	public void setZt(String zt) {
		this.zt = zt;
	}

	public String getDt() {
		return dt;
	}

	public void setDt(String dt) {
		this.dt = dt;
	}

	public int getDycs() {
		return dycs;
	}

	public void setDycs(int dycs) {
		this.dycs = dycs;
	}

	public String getWorkType() {
		return workType;
	}

	public void setWorkType(String workType) {
		this.workType = workType;
	}

	public Outbound() {
		super();
	}

	public Outbound(String id){
		super(id);
	}

	public String getProjectName() {
		return projectName;
	}

	public void setProjectName(String projectName) {
		this.projectName = projectName;
	}

	@ExcelField(title="订单号", align=2, sort=6)
	public String getCode() {
		return code;
	}

	public void setCode(String code) {
		this.code = code;
	}
	
	@ExcelField(title="状态", align=2, sort=7)
	public String getStatus() {
		return status;
	}

	public void setStatus(String status) {
		this.status = status;
	}
	
	@ExcelField(title="订单类型", align=2, sort=8)
	public String getType() {
		return type;
	}

	public void setType(String type) {
		this.type = type;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@ExcelField(title="订单日期", align=2, sort=9)
	public Date getDate() {
		return date;
	}

	public void setDate(Date date) {
		this.date = date;
	}
	
	@ExcelField(title="货主代码", align=2, sort=10)
	public String getOwnerCode() {
		return ownerCode;
	}

	public void setOwnerCode(String ownerCode) {
		this.ownerCode = ownerCode;
	}
	
	@ExcelField(title="销售订单号", align=2, sort=11)
	public String getEntrustNumber() {
		return entrustNumber;
	}

	public void setEntrustNumber(String entrustNumber) {
		this.entrustNumber = entrustNumber;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@ExcelField(title="要求发货日期", align=2, sort=12)
	public Date getDeliveryTime() {
		return deliveryTime;
	}

	public void setDeliveryTime(Date deliveryTime) {
		this.deliveryTime = deliveryTime;
	}
	
	@ExcelField(title="总订购量", align=2, sort=13)
	public String getAmount() {
		return amount;
	}

	public void setAmount(String amount) {
		this.amount = amount;
	}
	
	@ExcelField(title="外部订单号", align=2, sort=14)
	public String getExternalOrder() {
		return externalOrder;
	}

	public void setExternalOrder(String externalOrder) {
		this.externalOrder = externalOrder;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@ExcelField(title="实际发货日期", align=2, sort=15)
	public Date getActualDeliveryTime() {
		return actualDeliveryTime;
	}

	public void setActualDeliveryTime(Date actualDeliveryTime) {
		this.actualDeliveryTime = actualDeliveryTime;
	}
	
	@ExcelField(title="总毛重", align=2, sort=16)
	public String getGrossWeight() {
		return grossWeight;
	}

	public void setGrossWeight(String grossWeight) {
		this.grossWeight = grossWeight;
	}
	
	@ExcelField(title="总体积", align=2, sort=17)
	public String getVolume() {
		return volume;
	}

	public void setVolume(String volume) {
		this.volume = volume;
	}
	
	@ExcelField(title="erp订单号", align=2, sort=18)
	public String getErpOrder() {
		return erpOrder;
	}

	public void setErpOrder(String erpOrder) {
		this.erpOrder = erpOrder;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@ExcelField(title="到货日期", align=2, sort=19)
	public Date getArrivalTime() {
		return arrivalTime;
	}

	public void setArrivalTime(Date arrivalTime) {
		this.arrivalTime = arrivalTime;
	}
	
	@ExcelField(title="总净重", align=2, sort=20)
	public String getNetWeight() {
		return netWeight;
	}

	public void setNetWeight(String netWeight) {
		this.netWeight = netWeight;
	}
	
	@ExcelField(title="总金额", align=2, sort=21)
	public String getMoney() {
		return money;
	}

	public void setMoney(String money) {
		this.money = money;
	}
	
	@ExcelField(title="erp发运号", align=2, sort=22)
	public String getShipmentNumbers() {
		return shipmentNumbers;
	}

	public void setShipmentNumbers(String shipmentNumbers) {
		this.shipmentNumbers = shipmentNumbers;
	}
	
	@ExcelField(title="作业单号", align=2, sort=23)
	public String getWorkNumber() {
		return workNumber;
	}

	public void setWorkNumber(String workNumber) {
		this.workNumber = workNumber;
	}
	
	@ExcelField(title="箱数", align=2, sort=24)
	public String getNo() {
		return no;
	}

	public void setNo(String no) {
		this.no = no;
	}
	
	@ExcelField(title="装卸类型", align=2, sort=25)
	public String getLoadingType() {
		return loadingType;
	}

	public void setLoadingType(String loadingType) {
		this.loadingType = loadingType;
	}
	
	@ExcelField(title="移动类型", align=2, sort=26)
	public String getMoveType() {
		return moveType;
	}

	public void setMoveType(String moveType) {
		this.moveType = moveType;
	}
	
	@ExcelField(title="物流商名称", align=2, sort=27)
	public String getLogisticsName() {
		return logisticsName;
	}

	public void setLogisticsName(String logisticsName) {
		this.logisticsName = logisticsName;
	}
	
	@ExcelField(title="联系人", align=2, sort=28)
	public String getLogisticsPerson() {
		return logisticsPerson;
	}

	public void setLogisticsPerson(String logisticsPerson) {
		this.logisticsPerson = logisticsPerson;
	}
	
	@ExcelField(title="联系人电话", align=2, sort=29)
	public String getLogisticsPhone() {
		return logisticsPhone;
	}

	public void setLogisticsPhone(String logisticsPhone) {
		this.logisticsPhone = logisticsPhone;
	}
	
	@ExcelField(title="车牌号码", align=2, sort=30)
	public String getPlateNumber() {
		return plateNumber;
	}

	public void setPlateNumber(String plateNumber) {
		this.plateNumber = plateNumber;
	}
	
	@ExcelField(title="司机电话", align=2, sort=31)
	public String getDriverPhone() {
		return driverPhone;
	}

	public void setDriverPhone(String driverPhone) {
		this.driverPhone = driverPhone;
	}
	
	@ExcelField(title="运输方式", align=2, sort=32)
	public String getTransportMode() {
		return transportMode;
	}

	public void setTransportMode(String transportMode) {
		this.transportMode = transportMode;
	}
	
	@ExcelField(title="司机姓名", align=2, sort=33)
	public String getDriverName() {
		return driverName;
	}

	public void setDriverName(String driverName) {
		this.driverName = driverName;
	}
	
	@ExcelField(title="货主名称", align=2, sort=34)
	public String getOwnerName() {
		return ownerName;
	}

	public void setOwnerName(String ownerName) {
		this.ownerName = ownerName;
	}
	
	@ExcelField(title="地址", align=2, sort=35)
	public String getOwnerAddress() {
		return ownerAddress;
	}

	public void setOwnerAddress(String ownerAddress) {
		this.ownerAddress = ownerAddress;
	}
	
	@ExcelField(title="联系人", align=2, sort=36)
	public String getOwnerPerson() {
		return ownerPerson;
	}

	public void setOwnerPerson(String ownerPerson) {
		this.ownerPerson = ownerPerson;
	}
	
	@ExcelField(title="电话", align=2, sort=37)
	public String getOwnerPhone() {
		return ownerPhone;
	}

	public void setOwnerPhone(String ownerPhone) {
		this.ownerPhone = ownerPhone;
	}
	
	@ExcelField(title="物流订单号", align=2, sort=38)
	public String getLogisticsOrder() {
		return logisticsOrder;
	}

	public void setLogisticsOrder(String logisticsOrder) {
		this.logisticsOrder = logisticsOrder;
	}
	
	@ExcelField(title="货主系统名称", align=2, sort=39)
	public String getOwnerSystem() {
		return ownerSystem;
	}

	public void setOwnerSystem(String ownerSystem) {
		this.ownerSystem = ownerSystem;
	}
	
	@ExcelField(title="收货单位名称", align=2, sort=40)
	public String getUnitName() {
		return unitName;
	}

	public void setUnitName(String unitName) {
		this.unitName = unitName;
	}
	
	@ExcelField(title="收货单位确认人", align=2, sort=41)
	public String getUnitConfirmor() {
		return unitConfirmor;
	}

	public void setUnitConfirmor(String unitConfirmor) {
		this.unitConfirmor = unitConfirmor;
	}
	
	@ExcelField(title="确认人电话", align=2, sort=42)
	public String getPhone() {
		return phone;
	}

	public void setPhone(String phone) {
		this.phone = phone;
	}
	
	@ExcelField(title="收货详细地址", align=2, sort=43)
	public String getSite() {
		return site;
	}

	public void setSite(String site) {
		this.site = site;
	}
	
	@ExcelField(title="到站省", align=2, sort=44)
	public String getArriveProvince() {
		return arriveProvince;
	}

	public void setArriveProvince(String arriveProvince) {
		this.arriveProvince = arriveProvince;
	}
	
	@ExcelField(title="到站市", align=2, sort=45)
	public String getArriveCity() {
		return arriveCity;
	}

	public void setArriveCity(String arriveCity) {
		this.arriveCity = arriveCity;
	}
	
	@ExcelField(title="合同里程", align=2, sort=46)
	public String getDistance() {
		return distance;
	}

	public void setDistance(String distance) {
		this.distance = distance;
	}
	
	@ExcelField(title="运输线路", align=2, sort=47)
	public String getTransitLines() {
		return transitLines;
	}

	public void setTransitLines(String transitLines) {
		this.transitLines = transitLines;
	}
	
	public List<OutStatistics> getOutStatisticsList() {
		return outStatisticsList;
	}

	public void setOutStatisticsList(List<OutStatistics> outStatisticsList) {
		this.outStatisticsList = outStatisticsList;
	}
	public List<Storehouse> getStorehouseList() {
		return storehouseList;
	}

	public void setStorehouseList(List<Storehouse> storehouseList) {
		this.storehouseList = storehouseList;
	}
}